// 动态路由文件夹 modules 文件夹下的每个 .ts 都是一个模块的路由
import {mergeRouteModules} from "@/utils/mergeRoutes";
import type {RouteRecordRaw} from "vue-router";
import baseRoutes from "@/router/routes/base";

const dynamicRouteFiles = import.meta.glob("./modules/**/*.ts", {
    eager: true,
})

// 外部路由列表文件夹，有需要可以自行打开注释，并创建 external 文件夹
// const externalRouteFiles = import.meta.glob('./external/**/*.ts', { eager: true });

// 合并动态路由文件夹中的路由
const dynamicRoutes = mergeRouteModules(dynamicRouteFiles)

/** 外部路由列表，访问这些页面可以不需要Layout，可能用于内嵌在别的系统 */
// const externalRoutes: RouteRecordRaw[] = mergeRouteModules(externalRouteFiles);
const externalRoutes: RouteRecordRaw[] = [];

// 合并路由列表：基本路由 + 额外路由
const routes: RouteRecordRaw[] = [
    ...baseRoutes,
    ...externalRoutes,
];

export {routes, dynamicRoutes};